package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 实训记录对象 sys_train
 * 
 * @author ruoyi
 * @date 2024-12-27
 */
public class SysTrain extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long trainId;

    private Long roomId;

    /** 实训学员 */
    @Excel(name = "实训学员")
    private Long studentId;

    /** 现实训门店 */
    @Excel(name = "现实训门店")
    private Long storeId;

    /** 费用类型 */
    @Excel(name = "所属课程")
    private String feeType;

    /** 交费时间 */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Excel(name = "交费时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date feeTime;

    /** 金额 */
    @Excel(name = "金额")
    private Long money;

    /** 到店时间 */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Excel(name = "到店时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date comeTime;

    /** 是否调店 */
    @Excel(name = "是否调店")
    private String isAdjust;

    /** 调店时间 */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Excel(name = "调店时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date adjustTime;

    /** 原实训门店 */
    @Excel(name = "原实训门店")
    private Long oldStoreId;

    /** 状态（0在岗1请假2调店3流失） */
    @Excel(name = "状态", readConverterExp = "0=在岗1请假2调店3流失")
    private String status;

    private SysStudent student;

    public SysStudent getStudent(){
        if(student == null){
            student = new SysStudent();
        }
        return student;
    }
    public void setRoomId(Long roomId)
    {
        this.roomId = roomId;
    }
    public Long getRoomId()
    {
        return roomId;
    }

    public void setTrainId(Long trainId) 
    {
        this.trainId = trainId;
    }
    public Long getTrainId() 
    {
        return trainId;
    }

    public void setStudentId(Long studentId) 
    {
        this.studentId = studentId;
    }

    public Long getStudentId() 
    {
        return studentId;
    }

    public void setStoreId(Long storeId) 
    {
        this.storeId = storeId;
    }

    public Long getStoreId() 
    {
        return storeId;
    }

    public void setFeeType(String feeType)
    {
        this.feeType = feeType;
    }

    public String getFeeType()
    {
        return feeType;
    }

    public void setFeeTime(Date feeTime) 
    {
        this.feeTime = feeTime;
    }

    public Date getFeeTime() 
    {
        return feeTime;
    }

    public void setMoney(Long money) 
    {
        this.money = money;
    }

    public Long getMoney() 
    {
        return money;
    }

    public void setComeTime(Date comeTime) 
    {
        this.comeTime = comeTime;
    }

    public Date getComeTime() 
    {
        return comeTime;
    }

    public void setIsAdjust(String isAdjust) 
    {
        this.isAdjust = isAdjust;
    }

    public String getIsAdjust() 
    {
        return isAdjust;
    }

    public void setAdjustTime(Date adjustTime) 
    {
        this.adjustTime = adjustTime;
    }

    public Date getAdjustTime() 
    {
        return adjustTime;
    }

    public void setOldStoreId(Long oldStoreId) 
    {
        this.oldStoreId = oldStoreId;
    }

    public Long getOldStoreId() 
    {
        return oldStoreId;
    }

    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("trainId", getTrainId())
            .append("studentId", getStudentId())
            .append("storeId", getStoreId())
            .append("feeType", getFeeType())
            .append("feeTime", getFeeTime())
            .append("money", getMoney())
            .append("comeTime", getComeTime())
            .append("isAdjust", getIsAdjust())
            .append("adjustTime", getAdjustTime())
            .append("oldStoreId", getOldStoreId())
            .append("remark", getRemark())
            .append("createTime", getCreateTime())
            .append("status", getStatus())
            .append("updateTime", getUpdateTime())
            .append("updateBy", getUpdateBy())
            .toString();
    }
}
